It is customary for individuals involved in personal, commercial or professional activities to exchange contact information with their associates. In a typical exchange, parties convey company names, personal names, job titles, telephone numbers, mailing addresses, email addresses, web page addresses and other contact information. The mode of exchange usually includes stating the information verbally, writing down the information or exchanging business cards or stationery. Traditionally, people have recorded and organized contact information manually by writing contact information into an address book or by affixing a business card or a contact entry to a record keeping system such as Rolodex®.
Today's computer-based contact management applications provide powerful search and retrieval capabilities and user friendly application interfaces, which make it convenient for individuals to enter contact information into their personal computers. Contact management applications are also found on portable devices including cellular telephones, hand-held computers, VoIP (Voice over Internet Protocol) telephones, and web-based applications. Additionally, many businesses employ enterprise resource planning systems, customer relationship management systems, sales force automation systems and other systems having contact management functionality. As a result, a large number of contact management applications are available for personal and business use, and individuals regularly utilize more than one contact management application to store and maintain their contact information.
Entering contact information into multiple contact management applications requires a time-consuming and redundant manual data entry process. The high costs associated with manual data entry are well-understood, and many prior art systems have been designed to address these concerns. For example, creating an electronic backup file of a contact information database enables contact data to be automatically restored to a contact management application if the application's database becomes corrupt. Backup files also enable data from one application to be imported into another application, provided the file formats are compatible or translation from one format to another is feasible.
Some prior art systems were designed to minimize the burden of manually entering contact information through use of specialized hardware and software. In one approach, a business card scanner is used to scan the characters on a printed business card, and specialized Optical Character Recognition (OCR) software attempts to identify the scanned characters and assign the identified characters to appropriate data fields in a contact management application. These systems require the purchase of expensive hardware and software, and human oversight is needed to ensure accuracy of the recognized characters and placement of the data in the appropriate contact information field (e.g., the software may mistakenly assign a fax phone number to a voice phone number field). These scanning systems are typically adapted to work with personal computers and may not be compatible with small computing devices such as personal digital assistants (PDAs), handheld computers, and cellular telephones. These scanning systems are further limited to scanning printed business cards, thus contact information received through other conveyances (e.g., verbal or handwritten) will still require manual data entry.
In another approach, a Uniform Resource Locator (“URL”) for an HTML web page is encoded into barcode format onto a business card. A recipient of the business card scans the barcode into a web browser application to access a corresponding web page containing personal contact information. This type of system is described in Software Patent Institute Serial Number TDB0901.0055, entitled “E-Business Card System,” and Serial Number TDB1093.0202, entitled “Coded Business Cards.” Drawbacks of this approach include high equipment costs and the inability to use the system to input data into existing contact management applications.
Small, portable devices such as PDAs, handheld computers or cellular phones present additional problems for users needing to manually enter contact information. Cellular phones, for example, include numeric keypads in which a single key is used for entry of a number and multiple letters. As a result, a user may need to press the same key three or four times to select a desired letter or number. Many pen-based PDAs do not include a physical keypad, but instead provide the user with a “virtual” keyboard on the PDA display that may be tapped with a pen. Some small computing devices include a miniaturized keyboard, but data entry remains more challenging than using a full-sized keyboard on a typical desktop or laptop computer. Because of the difficulty in entering and managing data on small devices, many users manage contact information using a software application on a desktop computer. The contact information can be entered and viewed through the desktop application and then downloaded to compatible contact management applications on PDAs, handheld computers and cellular phones via a cable or wireless network transmission.
To facilitate the electronic exchange of contact information, the Internet Mail Consortium developed a specification for an electronic business card data structure called a “vCard.” Users typically exchange vCards as attachments to email messages. The recipient of a vCard may import the vCard data into a contact management application that supports the vCard format. Drawbacks of the vCard include the difficulty of maintaining up-to-date contact information once conveyed, and the lack of compatibility with traditional modes of conveyance such as a standard business card, which still requires manual input of contact information.
Web-based contact management applications have also been introduced, but these systems are not widely used due to drawbacks in the various approaches. In one approach, a subscriber enters contact information online, shares the information with other online subscribers, and may download other subscribers' contact information to a proprietary application. Among the drawbacks of these systems are the use of proprietary contact management software and the requirement that both parties be subscribers to the web-based system.
Another approach offers add-on modules to contact management applications in widely-adopted email applications to assist in maintaining current contact information. Examples of this type of system are described in U.S. Pat. Nos. 6,694,353 and 6,701,348. In one approach, the contact management application notifies the user when the application sends an email message to a contact at an email address that is not valid. The stored contact information may then be updated using a secondary email address for the intended recipient. In another approach, a user of an email application transmits an email message to each member of the user's contact list requesting that each recipient verify the accuracy of the recipient's current contact information. One drawback to these approaches is that use is limited to certain software applications, such as Microsoft Outlook. Another drawback is that sending emails to recipients in a contact list may be inconvenient and annoying to the recipients, because the emails effectively serve as data entry forms. When a recipient's contact information is stored in multiple contact lists, the recipient may be inundated with email requests from the owner of each list to separately verify the recipient's stored contact information. Another drawback is that these systems require unique context-dependent identifiers for use in data lookup. Context-dependent identifiers include telephone numbers and email addresses. A user who lacks a required identifier cannot store and share contact information on these systems. Further, context-dependent identifiers are subject to change, for example, as the user moves or changes jobs.
Additional approaches involve generating a unique identifier for contact management records. One approach offers a service that creates a vCard record and attaches an identifier to the record. This approach does not appear to offer any means of augmenting an application such as an email application with data entry, update, synchronization or backup features—relying instead on the widespread support for the vCard data format for data entry.
There is a significant market for applications that “synchronize” contact records between different devices. The known solutions have some significant disadvantages. The object of the solutions typically involves copying a contact record from one device and adding it to another device. If the devices have the same record, these systems compare the records to find the most up-to-date version. If the solution cannot determine the most recent version, it typically presents a “conflict resolution” interface to the user, or provides a default setting that enables one system's record to prevail. As people attempt to synchronize more than two devices, the number of records to compare increases—impairing performance. When synchronization solutions attempt to retrieve data from applications behind corporate firewalls, the firewalls can undermine the synchronization solution by blocking inbound network requests. Additionally, as people increasingly adopt wireless communications devices, they may find that uploading data from these devices may also present significant performance issues. Prior art synchronization systems also have a tendency to create duplicate records, because users typically enter the minimum information necessary for a particular device (e.g., name and email address for email applications; name and phone number for phones).
Recent solutions have coupled synchronization solutions to electronic address book backup solutions. By providing a centralized server for synchronization solutions, the centralized server stores the most recent copy of each record on behalf of a user—enabling the user to enjoy synchronization and backup in a single application. By augmenting synchronization solutions with a user interface that enables the user to update a record, these solutions purport to offer updates, synchronization and backup in a single solution. The drawbacks to these solutions include limited update functionality (i.e., it is up to the user to enter the update), no ID-based automatic data entry, and reliance on traditional synchronization solutions.
Prior art also involves presence detection technologies that have the ability to provide information of the presence of a device or user at a particular location. U.S. Pat. Nos. 7,110,773 and 5,659,596 describe such technologies. Presence detection technologies are also common with instant messaging applications and VoIP solutions. However, presence detection technologies do not appear to aggregated presence indicators of a user or device for a variety of different technologies and make that information available to others directly in their contact address books.
Therefore, there is a need for an improved system and method for contact management.